﻿#region NeoPatterns
// 
// NeoPatterns framework is released under LGPLv3 license.
// See http://www.opensource.org/licenses/lgpl-3.0.html for more details.
// 
// Please visit http://neopatterns.wikidot.com for more information about NeoPatterns
// 
// Copyright (c) Pascal Craponne 2008
// 
#endregion

namespace NeoPatterns.Core.Aop
{
    /// <summary>
    /// AOP advisor, called when a point-cut applies
    /// </summary>
    public interface IAdvisor
    {
        /// <summary>
        /// Called around (in place of) the original call (given as parameter)
        /// </summary>
        /// <param name="invocation">Original call (to be continued)</param>
        void Advise(IInvocation invocation);
    }
}